// vite.config.ts
import { fileURLToPath, URL } from "node:url";
import { defineConfig, loadEnv } from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/vite/dist/node/index.js";
import vue from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/@vitejs/plugin-vue/dist/index.mjs";
import vueJsx from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/@vitejs/plugin-vue-jsx/dist/index.mjs";
import Components from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/unplugin-vue-components/dist/vite.js";
import { VantResolver } from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/unplugin-vue-components/dist/resolvers.js";
import { createSvgIconsPlugin } from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/vite-plugin-svg-icons/dist/index.mjs";
import path from "path";
import mockDevServerPlugin from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/vite-plugin-mock-dev-server/dist/index.js";
import viteCompression from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/vite-plugin-compression/dist/index.mjs";
import { createHtmlPlugin } from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/vite-plugin-html/dist/index.mjs";

// build/cdn.ts
import { cdn } from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/vite-plugin-cdn2/dist/index.mjs";
import { unpkg } from "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/node_modules/vite-plugin-cdn2/dist/resolver/unpkg.mjs";
function enableCDN(isEnabled) {
  if (isEnabled === "true") {
    return cdn({
      resolve: unpkg(),
      modules: ["vue", "vue-demi", "pinia", "axios", "vant", "vue-router"]
    });
  }
}

// vite.config.ts
var __vite_injected_original_import_meta_url = "file:///D:/%E9%A1%B9%E7%9B%AE/vue3-h5-template-master/vite.config.ts";
var root = process.cwd();
var vite_config_default = defineConfig(({ mode }) => {
  const env = loadEnv(mode, root, "");
  return {
    base: env.VITE_PUBLIC_PATH || "/",
    optimizeDeps: {
      esbuildOptions: {
        define: {
          global: "globalThis"
        }
      }
    },
    plugins: [
      vue(),
      vueJsx(),
      mockDevServerPlugin(),
      // vant 组件自动按需引入
      Components({
        dts: "src/typings/components.d.ts",
        resolvers: [VantResolver()]
      }),
      // svg icon
      createSvgIconsPlugin({
        // 指定图标文件夹
        iconDirs: [path.resolve(root, "src/icons/svg")],
        // 指定 symbolId 格式
        symbolId: "icon-[dir]-[name]"
      }),
      // 生产环境 gzip 压缩资源
      viteCompression({
        verbose: true,
        disable: false,
        threshold: 10240,
        algorithm: "gzip",
        ext: ".gz",
        deleteOriginFile: false,
        filter: /\.(js|mjs|json|css|html|svg)$/i
      }),
      // 注入模板数据
      createHtmlPlugin({
        inject: {
          data: {
            ENABLE_ERUDA: env.VITE_ENABLE_ERUDA || "false"
          }
        }
      }),
      // 生产环境默认不启用 CDN 加速
      enableCDN(env.VITE_CDN_DEPS)
    ],
    resolve: {
      alias: {
        "@": fileURLToPath(new URL("./src", __vite_injected_original_import_meta_url))
      }
    },
    server: {
      host: true,
      // 仅在 proxy 中配置的代理前缀， mock-dev-server 才会拦截并 mock
      // doc: https://github.com/pengzhanbo/vite-plugin-mock-dev-server
      proxy: {
        "^/dev-api": {
          target: ""
        }
      }
    },
    build: {
      rollupOptions: {
        output: {
          chunkFileNames: "static/js/[name]-[hash].js",
          entryFileNames: "static/js/[name]-[hash].js",
          assetFileNames: "static/[ext]/[name]-[hash].[ext]",
          manualChunks: {
            "vendor": ["vue", "vue-router", "pinia"],
            "vant": ["vant"],
            "utils": ["lodash", "axios"]
          }
        }
      },
      // 生产环境移除 console
      minify: "terser",
      terserOptions: {
        compress: {
          drop_console: true,
          drop_debugger: true,
          pure_funcs: ["console.log"]
        },
        format: {
          comments: false
        }
      },
      // 设置资源大小限制
      chunkSizeWarningLimit: 2e3,
      // 启用 brotli 压缩
      brotliSize: true,
      // 启用 CSS 代码分割
      cssCodeSplit: true,
      // 启用源码映射
      sourcemap: false,
      // 启用资源压缩
      assetsInlineLimit: 4096,
      // 启用 CSS 压缩
      cssMinify: true,
      // 启用图片压缩
      assetsDir: "static",
      // 启用代码分割
      target: "es2015",
      // 启用模块预加载
      modulePreload: {
        polyfill: true
      },
      // 启用资源压缩
      reportCompressedSize: false,
      // 启用代码分割
      commonjsOptions: {
        transformMixedEsModules: true
      }
    }
  };
});
export {
  vite_config_default as default
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcudHMiLCAiYnVpbGQvY2RuLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiRDpcXFxcXHU5ODc5XHU3NkVFXFxcXHZ1ZTMtaDUtdGVtcGxhdGUtbWFzdGVyXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCJEOlxcXFxcdTk4NzlcdTc2RUVcXFxcdnVlMy1oNS10ZW1wbGF0ZS1tYXN0ZXJcXFxcdml0ZS5jb25maWcudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0Q6LyVFOSVBMSVCOSVFNyU5QiVBRS92dWUzLWg1LXRlbXBsYXRlLW1hc3Rlci92aXRlLmNvbmZpZy50c1wiO2ltcG9ydCB7IGZpbGVVUkxUb1BhdGgsIFVSTCB9IGZyb20gXCJub2RlOnVybFwiO1xuaW1wb3J0IHsgZGVmaW5lQ29uZmlnLCBsb2FkRW52IH0gZnJvbSBcInZpdGVcIjtcbmltcG9ydCB2dWUgZnJvbSBcIkB2aXRlanMvcGx1Z2luLXZ1ZVwiO1xuaW1wb3J0IHZ1ZUpzeCBmcm9tIFwiQHZpdGVqcy9wbHVnaW4tdnVlLWpzeFwiO1xuaW1wb3J0IENvbXBvbmVudHMgZnJvbSBcInVucGx1Z2luLXZ1ZS1jb21wb25lbnRzL3ZpdGVcIjtcbmltcG9ydCB7IFZhbnRSZXNvbHZlciB9IGZyb20gXCJ1bnBsdWdpbi12dWUtY29tcG9uZW50cy9yZXNvbHZlcnNcIjtcbmltcG9ydCB7IGNyZWF0ZVN2Z0ljb25zUGx1Z2luIH0gZnJvbSBcInZpdGUtcGx1Z2luLXN2Zy1pY29uc1wiO1xuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCBtb2NrRGV2U2VydmVyUGx1Z2luIGZyb20gXCJ2aXRlLXBsdWdpbi1tb2NrLWRldi1zZXJ2ZXJcIjtcbmltcG9ydCB2aXRlQ29tcHJlc3Npb24gZnJvbSBcInZpdGUtcGx1Z2luLWNvbXByZXNzaW9uXCI7XG5pbXBvcnQgeyBjcmVhdGVIdG1sUGx1Z2luIH0gZnJvbSBcInZpdGUtcGx1Z2luLWh0bWxcIjtcbmltcG9ydCB7IGVuYWJsZUNETiB9IGZyb20gXCIuL2J1aWxkL2NkblwiO1xuXG4vLyBcdTVGNTNcdTUyNERcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTVcdThERUZcdTVGODRcbmNvbnN0IHJvb3Q6IHN0cmluZyA9IHByb2Nlc3MuY3dkKCk7XG5cbi8vIGh0dHBzOi8vdml0ZWpzLmRldi9jb25maWcvXG5leHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcoKHsgbW9kZSB9KSA9PiB7XG4gIC8vIFx1NzNBRlx1NTg4M1x1NTNEOFx1OTFDRlxuICBjb25zdCBlbnYgPSBsb2FkRW52KG1vZGUsIHJvb3QsIFwiXCIpO1xuICByZXR1cm4ge1xuICAgIGJhc2U6IGVudi5WSVRFX1BVQkxJQ19QQVRIIHx8IFwiL1wiLFxuICAgIG9wdGltaXplRGVwczoge1xuICAgICAgZXNidWlsZE9wdGlvbnM6IHtcbiAgICAgICAgZGVmaW5lOiB7XG4gICAgICAgICAgZ2xvYmFsOiAnZ2xvYmFsVGhpcydcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgcGx1Z2luczogW1xuICAgICAgdnVlKCksXG4gICAgICB2dWVKc3goKSxcbiAgICAgIG1vY2tEZXZTZXJ2ZXJQbHVnaW4oKSxcbiAgICAgIC8vIHZhbnQgXHU3RUM0XHU0RUY2XHU4MUVBXHU1MkE4XHU2MzA5XHU5NzAwXHU1RjE1XHU1MTY1XG4gICAgICBDb21wb25lbnRzKHtcbiAgICAgICAgZHRzOiBcInNyYy90eXBpbmdzL2NvbXBvbmVudHMuZC50c1wiLFxuICAgICAgICByZXNvbHZlcnM6IFtWYW50UmVzb2x2ZXIoKV1cbiAgICAgIH0pLFxuICAgICAgLy8gc3ZnIGljb25cbiAgICAgIGNyZWF0ZVN2Z0ljb25zUGx1Z2luKHtcbiAgICAgICAgLy8gXHU2MzA3XHU1QjlBXHU1NkZFXHU2ODA3XHU2NTg3XHU0RUY2XHU1OTM5XG4gICAgICAgIGljb25EaXJzOiBbcGF0aC5yZXNvbHZlKHJvb3QsIFwic3JjL2ljb25zL3N2Z1wiKV0sXG4gICAgICAgIC8vIFx1NjMwN1x1NUI5QSBzeW1ib2xJZCBcdTY4M0NcdTVGMEZcbiAgICAgICAgc3ltYm9sSWQ6IFwiaWNvbi1bZGlyXS1bbmFtZV1cIlxuICAgICAgfSksXG4gICAgICAvLyBcdTc1MUZcdTRFQTdcdTczQUZcdTU4ODMgZ3ppcCBcdTUzOEJcdTdGMjlcdThENDRcdTZFOTBcbiAgICAgIHZpdGVDb21wcmVzc2lvbih7XG4gICAgICAgIHZlcmJvc2U6IHRydWUsXG4gICAgICAgIGRpc2FibGU6IGZhbHNlLFxuICAgICAgICB0aHJlc2hvbGQ6IDEwMjQwLFxuICAgICAgICBhbGdvcml0aG06ICdnemlwJyxcbiAgICAgICAgZXh0OiAnLmd6JyxcbiAgICAgICAgZGVsZXRlT3JpZ2luRmlsZTogZmFsc2UsXG4gICAgICAgIGZpbHRlcjogL1xcLihqc3xtanN8anNvbnxjc3N8aHRtbHxzdmcpJC9pXG4gICAgICB9KSxcbiAgICAgIC8vIFx1NkNFOFx1NTE2NVx1NkEyMVx1Njc3Rlx1NjU3MFx1NjM2RVxuICAgICAgY3JlYXRlSHRtbFBsdWdpbih7XG4gICAgICAgIGluamVjdDoge1xuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIEVOQUJMRV9FUlVEQTogZW52LlZJVEVfRU5BQkxFX0VSVURBIHx8IFwiZmFsc2VcIlxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgICAvLyBcdTc1MUZcdTRFQTdcdTczQUZcdTU4ODNcdTlFRDhcdThCQTRcdTRFMERcdTU0MkZcdTc1MjggQ0ROIFx1NTJBMFx1OTAxRlxuICAgICAgZW5hYmxlQ0ROKGVudi5WSVRFX0NETl9ERVBTKVxuICAgIF0sXG4gICAgcmVzb2x2ZToge1xuICAgICAgYWxpYXM6IHtcbiAgICAgICAgXCJAXCI6IGZpbGVVUkxUb1BhdGgobmV3IFVSTChcIi4vc3JjXCIsIGltcG9ydC5tZXRhLnVybCkpXG4gICAgICB9XG4gICAgfSxcbiAgICBzZXJ2ZXI6IHtcbiAgICAgIGhvc3Q6IHRydWUsXG4gICAgICAvLyBcdTRFQzVcdTU3MjggcHJveHkgXHU0RTJEXHU5MTREXHU3RjZFXHU3Njg0XHU0RUUzXHU3NDA2XHU1MjREXHU3RjAwXHVGRjBDIG1vY2stZGV2LXNlcnZlciBcdTYyNERcdTRGMUFcdTYyRTZcdTYyMkFcdTVFNzYgbW9ja1xuICAgICAgLy8gZG9jOiBodHRwczovL2dpdGh1Yi5jb20vcGVuZ3poYW5iby92aXRlLXBsdWdpbi1tb2NrLWRldi1zZXJ2ZXJcbiAgICAgIHByb3h5OiB7XG4gICAgICAgIFwiXi9kZXYtYXBpXCI6IHtcbiAgICAgICAgICB0YXJnZXQ6IFwiXCJcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgYnVpbGQ6IHtcbiAgICAgIHJvbGx1cE9wdGlvbnM6IHtcbiAgICAgICAgb3V0cHV0OiB7XG4gICAgICAgICAgY2h1bmtGaWxlTmFtZXM6IFwic3RhdGljL2pzL1tuYW1lXS1baGFzaF0uanNcIixcbiAgICAgICAgICBlbnRyeUZpbGVOYW1lczogXCJzdGF0aWMvanMvW25hbWVdLVtoYXNoXS5qc1wiLFxuICAgICAgICAgIGFzc2V0RmlsZU5hbWVzOiBcInN0YXRpYy9bZXh0XS9bbmFtZV0tW2hhc2hdLltleHRdXCIsXG4gICAgICAgICAgbWFudWFsQ2h1bmtzOiB7XG4gICAgICAgICAgICAndmVuZG9yJzogWyd2dWUnLCAndnVlLXJvdXRlcicsICdwaW5pYSddLFxuICAgICAgICAgICAgJ3ZhbnQnOiBbJ3ZhbnQnXSxcbiAgICAgICAgICAgICd1dGlscyc6IFsnbG9kYXNoJywgJ2F4aW9zJ11cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICAvLyBcdTc1MUZcdTRFQTdcdTczQUZcdTU4ODNcdTc5RkJcdTk2NjQgY29uc29sZVxuICAgICAgbWluaWZ5OiAndGVyc2VyJyxcbiAgICAgIHRlcnNlck9wdGlvbnM6IHtcbiAgICAgICAgY29tcHJlc3M6IHtcbiAgICAgICAgICBkcm9wX2NvbnNvbGU6IHRydWUsXG4gICAgICAgICAgZHJvcF9kZWJ1Z2dlcjogdHJ1ZSxcbiAgICAgICAgICBwdXJlX2Z1bmNzOiBbJ2NvbnNvbGUubG9nJ11cbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0OiB7XG4gICAgICAgICAgY29tbWVudHM6IGZhbHNlXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICAvLyBcdThCQkVcdTdGNkVcdThENDRcdTZFOTBcdTU5MjdcdTVDMEZcdTk2NTBcdTUyMzZcbiAgICAgIGNodW5rU2l6ZVdhcm5pbmdMaW1pdDogMjAwMCxcbiAgICAgIC8vIFx1NTQyRlx1NzUyOCBicm90bGkgXHU1MzhCXHU3RjI5XG4gICAgICBicm90bGlTaXplOiB0cnVlLFxuICAgICAgLy8gXHU1NDJGXHU3NTI4IENTUyBcdTRFRTNcdTc4MDFcdTUyMDZcdTUyNzJcbiAgICAgIGNzc0NvZGVTcGxpdDogdHJ1ZSxcbiAgICAgIC8vIFx1NTQyRlx1NzUyOFx1NkU5MFx1NzgwMVx1NjYyMFx1NUMwNFxuICAgICAgc291cmNlbWFwOiBmYWxzZSxcbiAgICAgIC8vIFx1NTQyRlx1NzUyOFx1OEQ0NFx1NkU5MFx1NTM4Qlx1N0YyOVxuICAgICAgYXNzZXRzSW5saW5lTGltaXQ6IDQwOTYsXG4gICAgICAvLyBcdTU0MkZcdTc1MjggQ1NTIFx1NTM4Qlx1N0YyOVxuICAgICAgY3NzTWluaWZ5OiB0cnVlLFxuICAgICAgLy8gXHU1NDJGXHU3NTI4XHU1NkZFXHU3MjQ3XHU1MzhCXHU3RjI5XG4gICAgICBhc3NldHNEaXI6ICdzdGF0aWMnLFxuICAgICAgLy8gXHU1NDJGXHU3NTI4XHU0RUUzXHU3ODAxXHU1MjA2XHU1MjcyXG4gICAgICB0YXJnZXQ6ICdlczIwMTUnLFxuICAgICAgLy8gXHU1NDJGXHU3NTI4XHU2QTIxXHU1NzU3XHU5ODg0XHU1MkEwXHU4RjdEXG4gICAgICBtb2R1bGVQcmVsb2FkOiB7XG4gICAgICAgIHBvbHlmaWxsOiB0cnVlXG4gICAgICB9LFxuICAgICAgLy8gXHU1NDJGXHU3NTI4XHU4RDQ0XHU2RTkwXHU1MzhCXHU3RjI5XG4gICAgICByZXBvcnRDb21wcmVzc2VkU2l6ZTogZmFsc2UsXG4gICAgICAvLyBcdTU0MkZcdTc1MjhcdTRFRTNcdTc4MDFcdTUyMDZcdTUyNzJcbiAgICAgIGNvbW1vbmpzT3B0aW9uczoge1xuICAgICAgICB0cmFuc2Zvcm1NaXhlZEVzTW9kdWxlczogdHJ1ZVxuICAgICAgfVxuICAgIH1cbiAgfTtcbn0pO1xuIiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJEOlxcXFxcdTk4NzlcdTc2RUVcXFxcdnVlMy1oNS10ZW1wbGF0ZS1tYXN0ZXJcXFxcYnVpbGRcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkQ6XFxcXFx1OTg3OVx1NzZFRVxcXFx2dWUzLWg1LXRlbXBsYXRlLW1hc3RlclxcXFxidWlsZFxcXFxjZG4udHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0Q6LyVFOSVBMSVCOSVFNyU5QiVBRS92dWUzLWg1LXRlbXBsYXRlLW1hc3Rlci9idWlsZC9jZG4udHNcIjtpbXBvcnQgeyBjZG4gfSBmcm9tIFwidml0ZS1wbHVnaW4tY2RuMlwiO1xuaW1wb3J0IHsgdW5wa2cgfSBmcm9tIFwidml0ZS1wbHVnaW4tY2RuMi9yZXNvbHZlci91bnBrZ1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gZW5hYmxlQ0ROKGlzRW5hYmxlZDogc3RyaW5nKSB7XG4gIGlmIChpc0VuYWJsZWQgPT09IFwidHJ1ZVwiKSB7XG4gICAgcmV0dXJuIGNkbih7XG4gICAgICByZXNvbHZlOiB1bnBrZygpLFxuICAgICAgbW9kdWxlczogW1widnVlXCIsIFwidnVlLWRlbWlcIiwgXCJwaW5pYVwiLCBcImF4aW9zXCIsIFwidmFudFwiLCBcInZ1ZS1yb3V0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
